﻿<p><em>IfcExtrudedAreaSolidTapered</em> is defined by sweeping a cross
section along a linear spine. The cross section may change along
the sweep from the shape of the start cross section into the
shape of the end cross section. The resulting solid is bounded by
three or more faces: A start face, an end face (each defined by
start and end planes and sections), and one or more lateral
faces. Each lateral face is a ruled surface defined by a pair of
corresponding edges of the start and end section.</p>
<blockquote class="note">NOTE&nbsp; Given that the start and end section is
provided by a polygon, the corresponding vertices of the start
and end cross section are connected, forming a quadrilateral
polygon between each pair of corresponding vertices. The surface
defined by the bounding quadrilateral polygon is a ruled surface,
that could be approximated by triangulation.</blockquote>
<p>The linear spine is defined by:</p>
<ul>
<li>Start point:
<em>SELF\IfcSweptAreaSolid.Position.Location</em></li>
<li>Direction:
<em>SELF\IfcExtrudedAreaSolid.ExtrudedDirection</em></li>
<li>Distance: <em>SELF\IfcExtrudedAreaSolid.Depth</em></li>
</ul>
<p>The start cross section is defined by
<em>SELF\IfcSweptAreaSolid.SweptArea</em>:</p>
<ul>
<li>A bounded planar surface lying in the XY plane of the
position coordinate system defined by
<em>SELF\IfcSweptAreaSolid.Position.P[1]</em> and
<em>SELF\IfcSweptAreaSolid.Position.P[2]</em></li>
<li>The linear spine starts at the plane of the start cross
section. The spine is not necessarily perpendicular to the
plane.</li>
</ul>
<p>The end cross section is defined by <em>EndSweptArea</em>:</p>
<ul>
<li>A bounded planar surface lying in the XY plane of the
position coordinate system defined by translating the start
position coordinates provided by
<em>SELF\IfcSweptAreaSolid.Position</em> along the spine direction
by the spine distance. The plane of the end cross section is
coplanar to the plane of the start cross section.</li>
<li style="list-style: none">
<ul>
<li>The end cross section is topologically similar to the start
cross section (i.e. having the same number of vertices and
edges).</li>
<li>The end cross section can either be defined by the same
paramteric profile using different parameter values, or by a 2D
Cartesian transformation of the start profile within the end
cross section plane.</li>
</ul>
</li>
</ul>
<p>In case of two parameterized profiles the shape is constructed
as follows:</p>
<ul>
<li>The end profile, defined by a cross section based on the same
profile paramterization as the start profile, is translated by
the spine distance along the spine direction.</li>
<li>It may be shifted within the XY plane of the end postion
coordinate system and may be twisted using the rotation
parameter.</li>
<li>The shift and rotation parameter are provided by the end
cross section being of type <em>IfcParameterizedProfileDef</em>,
where
<ul>
<li>Shift is
<em>EndSweptArea\IfcParameterizedProfileDef.Position.Location</em></li>
<li>Rotation is
<em>EndSweptArea\IfcParameterizedProfileDef.Position.RefDirection</em></li>
</ul>
</li>
<li>Corresponding vertices of the start and end cross section are
connected. Lateral faces are constructed as ruled surfaces
between corresponding edges of start and end cross section.</li>
</ul>
<p>In case of Cartesian transformation of the start cross section
the shape is constructed as follows:</p>
<ul>
<li>The cross section curve, which starts as a curve in the XY
plane of the position coordinate system, is first scaled about
the origin by the scale parameter. It is then translated by the
spine distance along the spine direction. It maybe twisted by
using the rotation parameter.</li>
<li>The scale and rotation parameter are provided by the end
cross section being of type <em>IfcDerivedProfileDef</em>, where
<ul>
<li>Scale is
<em>EndSweptArea\IfcDerivedProfileDef.Operator.Scale</em></li>
<li>Rotation is
<em>EndSweptArea\IfcDerivedProfileDef.Operator.Axis1</em></li>
</ul>
</li>
<li>Corresponding vertices of the start and end cross section are
connected. Lateral faces are constructed as ruled surfaces
between corresponding edges of start and end cross section.</li>
</ul>

<blockquote class="history">
HISTORY&nbsp; New entity in IFC4.
</blockquote>

<p class="spec-head">Informal Propositions:</p>
<ol>
<li>Mirroring within <em>IfcDerivedProfileDef.Operator</em> shall
not be used</li>
</ol>